package com.sfy.mallchat.common.user.domain.entity;

import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;

import java.util.Objects;
import java.util.Optional;

@Data
@AllArgsConstructor
@NoArgsConstructor
public class IpInfo {

    private String createIp;

    private String updateIp;

    private IpDetail createIpDetail;

    private IpDetail updateIpDetail;

    public String needRefresh() {
        boolean noNeedRefresh = Optional.ofNullable(updateIpDetail)
                .map(IpDetail::getIp)
                .filter(ip -> Objects.equals(ip, updateIp))
                .isPresent();
        return noNeedRefresh ? null : updateIp;
    }

    public void refreshDetail(IpDetail ipDetail) {
        if (Objects.equals(createIp,ipDetail.getIp())){
            createIpDetail = ipDetail;
        }
        if (Objects.equals(updateIp,ipDetail.getIp())){
            updateIpDetail = ipDetail;
        }
    }
}
